package com.renshine.base.util;

import java.io.File;
import java.util.ArrayList;
import java.util.List;


/**
 * 文件工具类, 主要读取数据的配置信息及模板信息
 * 
 * @author deyang
 *
 */
public class FileUtil {
	/**
	 * 取得系统的路径
	 * 
	 * @return
	 */
	public static String getSysPath() {
		return FileUtil.class.getClassLoader().getResource("").getPath();
	}
	
	/**
	 * 取得系统的路径
	 * 
	 * @return
	 */
	public static String getFilePath(String fileName) {
		return FileUtil.class.getClassLoader().getResource(fileName).getPath();
	}
	
	/**
	 * 取得模板的目录
	 * @param template
	 * @return
	 */
	public static String getTemplateDirectory(String template) {
		return FileUtil.getSysPath() + "/template/" + template;
	}
	
	/**
	 * 取得模板名称信息
	 */
	public static String[] getTemplates() {
		List<String> list = new ArrayList<String>();
		File template = new File(getSysPath() + "/template");
		for (File file : template.listFiles()) {
			if (file.isDirectory()) {
				list.add(file.getName());
			}
		}
		return list.toArray(new String[]{});
	}
	
	/**
	 * 取得数据库信息
	 */
	public static String[] getDatabases() {
		List<String> list = new ArrayList<String>();
		File template = new File(getSysPath() + "/database");
		for (File file : template.listFiles()) {
			if (!file.isDirectory()) {
				list.add(file.getName().replace(".properties", ""));
			}
		}
		return list.toArray(new String[]{});
	}
	
}
